-- THIS WILL POSSIBLY BE THE INTERFACE FOR MY NEW SCRIPT THAT IS LIKE DI-O-MATIC POS-O-MATIC WHICH ALLOW YOU TO POSE OBJECTS USING MORPHER SLOT -- I HOPE TO BE POSTING IT ON SCRIPTSPOT FOR FREE SOON. /* -- ITENERY ADD CHECKBOX TO CHOOSE TO USE THE OBJECTS STORED MORPH PROXY FOR WHEN WE CREATE THE MORPH PROXY MODIFIER TO PUT ON MORPH OBJECTS THAT ARE WIRED TO THERE MORPH PROXY PARENTS -- ADD PICK MORPH TARGET FUNCTIONALITY TO THE PICKBUTTON "a" -- ADD UPDATE ROLLOUT --- ADD SPINNER THAT WILL BE SET TO THE VALUE OF THE CHECKBOX THAT IS CHECKED SIMPLY SET THE VALUE EQUAL TO Slt in the loop when creating the checkboxes */ -- CREATE FUNCTION CheckForMrphr ChckObj = -- TO CHECK FOR MORPHER MOD ON ChckObj -- RETURNS Undefined if no morpher present -- RETURNS THE MORPHER MODIFIER IF IT IS PRESENT -- NOT NECESSARY SINCE WE ARE GETTING THE NAME --- GLOBAL VARIABLES Global StoredMrphObj432 ROLLOUT OpenMorphFloater "Open Morph Floater" ( EditText MorphModNameTxtBx "Name Of Morpher Mod" LabelOnTop:True Text:"Morpher" Spinner LowRangeSet "Low Range" range:[-1000,1000,0] Type:#Float Spinner HighRangeSet "High Range" range:[-1000,1000,100] Type:#Float Button OpenTheFloatr "Open Floater" Height:45 RadioButtons UseSelOrStrdRad "Use" Labels:#("sel","Stored") PickButton GetMrphChild "Pick Morph Obj" AutoDisplay:True On OpenTheFloatr Pressed Do ( ---- OPEN DYNAMIC ROLLOUT ROLLOUT VARIABLES OpenFloaterOkay = False Global MrphTargObj432 MorphModChosenName = MorphModNameTxtBx.text ---------------------------------------- If UseSelOrStrdRad.state == 1 then ( SelectChck = GetCurrentSelection() If SelectChck.count == 1 then ( MrphTargObj432 = SelectChck[1] If ClassOf MrphTargObj432.modifiers[ MorphModChosenName ] == Morpher Then ( OpenFloaterOkay = True ) Else ( MessageBox "Please select One Object with a morpher mod on it with the name Entered into the Above Text Box" ) ) Else ( MessageBox "Please select One Object with a morpher mod on it with the name Entered into the Above Text Box" ) ) Else ( If StoredMrphObj432 != undefined Then ( MrphTargObj432 = StoredMrphObj432 If ClassOf MrphTargObj432.modifiers[ MorphModChosenName] == Morpher Then ( OpenFloaterOkay = True ) Else ( MessageBox "Please select One Object with a morpher mod on it with the name Entered into the Above Text Box" ) ) Else ( MessageBox "If You have Stored Selected you must Pick The Object to Use" ) ) --------------------------------------- If OpenFloaterOkay == True Then ( LowRange = LowRangeSet.value -- Spinner LowRangeSet "Low Range" Type:integer HighRange = HighRangeSet.value -- Spinner HighRangeSet "High Range" Type:integer ----- --------------------------------------- ------------ ------------ ------------ ----- DYNAMIC ROLLOUT BUILD STRINGS ------------ ------------ ------------ --------------------------------------- EmptyStrngQuote = " \"\" " -- DYNAMIC ROLLOUT MAIN BUILD STRINGS VARIABLES Global DynamicRollExStrPart1 = "" Global DynamicRollExStrPart1Pick = "" Global DynamicRollExStrPart2 = "" Global DynamicRollExStrPart3 = "" Global DynamicRollExStrPart4 = "" Global RollFloatPart = "DynMrphRollFlt = NewRolloutFloater \"Morph Floater\" 300 500 " + "\n" + "\n" Global AddRlltPart = "AddRollout MorphLister DynMrphRollFlt " + "\n" + "\n" -- FINAL ROLLOUT BUILD STRING Global DynamicRollExStrFinal = "" -- DynamicRollExStrFinal = DynamicRollExStrPart1 + DynamicRollExStrPart2 + DynamicRollExStrPart3 + DynamicRollExStrPart4 + "\n) -- end rollout" + RollFloatPart + AddRlltPart -- DynamicRollExStrPart1 = RolloutAssignStr + "\n" + EditText_1_Strng + "\n" + RadButt_1_Strng + "\n" + PickButt_1_Strng + "\n" -- DynamicRollExStrPart2 = CheckBoxStrngBld + "\n" + SpinnersStrngBld + "\n" -- DynamicRollExStrPart3 = PickButtActnStrng + "\n" + CheckBxActnsStrBld + "\n" + SpinnerActnsStrBld + "\n" + "------------------" + "\n" RolloutAssignStr = "Rollout MorphLister \"Morph Lister\" \n(\n" ------- --- IN LOOP STRING BUILD VARIABLES ------- -- UI CheckBoxStrngBld = "" -- The CheckBox UI SpinnersStrngBld = "" -- The Spinner UI PicMrphTrgStrBld = "" PicMrphTrgStrBld = "" --- ACTIONS CheckBxActnsStrBld = "" -- The CheckBox Action SpinnerActnsStrBld = "" -- The Spinner Action PicMrphTrgActnStrBld = "" WholeSpinrUi = "\n" -- Spinners With CheckBoxes Next To Them LabNumbrStrngBld = "\n" -- NON LOOP --------------------------------------------- --- OTHER UI STRINGS --------------------------------------------- -- RADIO BUTTON STRING RadButt_1_Strng = "RadioButtons UseSelOrStored \"Use\" Labels:#(\"selected\",\"Stored\") " + "\n" -- EDIT TEXT STRING EditText_1_Strng = "EditText ModNameBox \"Modifier Name\" LabelOnTop:True Text:\"Morpher\" " + "\n" -- PICK BUTTON STRING PickButt_1_Strng = "PickButton StoreMrphObj \"Store Object\" " + "AutoDisplay:True" + "\n" -------------------------------------------- ---- OTHER UI ACTION STRINGS -------------------------------------------- PickButtActnStrng = " On StoreMrphObj picked Obj do ( MorphModName = ModNameBox.text If obj.modifiers[MorphModName] != undefined Then ( Global StoredMrphObj432 = obj ) ) -- end On StoreMrphObj picked Obj do " -- THE FINAL ROLLOUT EXECUTE STRING VARIABLE -- DynamicRollExStr = "" --- --- --- LOOP --- --- --- LOOP --- --- --- LOOP for slt = 1 to 100 do -- for slt = 1 to 100 do ( -- SPINNER STRING BULILD Global ChannelPropName = MrphTargObj432.modifiers["Morpher"][slt] -- Local ChannelSpnVal = MrphTargObj432.modifiers["Morpher"][slt].value If ChannelSpnVal == undefined Then ( ChannelSpnVal = 0 ) Global ChannelName = WM3_MC_GetName MrphTargObj432.modifiers["Morpher"] slt -- WM3_MC_GetName Morpher channel_index -- Local PicMrphTrgStrBld = "PickButton PickTrgt_" + (slt as String) + " " + "\"a\" " + "AutoDisplay:True" + " offset:[-10,0] " + " across:4" + "\n" LabNumbrStrngBld = "Label " + "LabNumbr_" + (slt as String) + " \"" + (slt as String) + "\" " + " offset:[-45,0] " + "\n" CheckBoxStrngBld = "\n" + "CheckBox " + "ChckBx_Chnnl_" + (slt as String) + EmptyStrngQuote + " offset:[-60,0] " + "\n" SpinnersStrngBld = "\n" + "Spinner " + "MrphChannel_" + (slt as String) + " \" " + ( ChannelName as String ) + " \" " + "range:[" + (LowRange as string) + "," + (HighRange as String) + "," + (ChannelSpnVal as String) + "]" + "\n" SpinnersStrngBld = SpinnersStrngBld + "range:[" + (LowRange as string) + "," + (HighRange as String) + "," + (ChannelSpnVal as String) + "]" SpinnersStrngBld = SpinnersStrngBld + " width:120 " + " offset:[-50,0] " + "\n" -- WholeSpinrUi = "\n" WholeSpinrUi = WholeSpinrUi + PicMrphTrgStrBld + LabNumbrStrngBld + CheckBoxStrngBld + SpinnersStrngBld -- DynamicRollExStrPart1 = RolloutAssignStr + "\n" + EditText_1_Strng + "\n" + RadButt_1_Strng + "\n" + PickButt_1_Strng + "\n" -- DynamicRollExStrPart2 = WholeSpinrUi + "\n" + "\n" + "\n" -- DynamicRollExStrPart3 = PickButtActnStrng + "\n" + CheckBxActnsStrBld + "\n" + SpinnerActnsStrBld + "\n" + "------------------" + "\n" ------------------------------------------------------------------------------------------------------- ---------- CHECK BOX ACTION ChcActnPrt1 = "On ChckBx_Chnnl_" + (slt as String) + " Changed State do \n" ChcActnPrt2 = " ( ThisCheckState = State for i = 1 to 100 do -- FOR ALL SLOTS ( ExecuteStateStr = \"MorphLister.ChckBx_Chnnl_\" + ( i as string ) + \".State = False\" Execute ExecuteStateStr ) ChckBx_Chnnl_" ChcActnPrt2 = ChcActnPrt2 + (slt as String) ChcActnPrt2 = ChcActnPrt2 + ".state = ThisCheckState" + "\n" + ")" ChcActnPrt3 = "-- END " + ChcActnPrt1 -- FINAL CHECK BOX ACTION CheckBxActnsStrBld = CheckBxActnsStrBld + "\n" + ChcActnPrt1 + ChcActnPrt2 + ChcActnPrt3 ----------------------------------------------------------------------------------------------------- ---------- SPINNER ACTION SpinActBldPrt1 = "On "+ " MrphChannel_" + (slt as String) + " Changed Value Do" + "\n" ----------------------------------------- SpinActBldPrt1_A =" ( ClassOfModGood = False ModNameText = ModNameBox.text If UseSelOrStored.State == 1 Then -- USE SELECTED ( TargMrphObj = $ ) Else ( If isValidNode StoredMrphObj432 Then ( TargMrphObj = StoredMrphObj432 ) ) -- end If UseSelected.State == True Then If isValidNode TargMrphObj Then ( -- CHECK FOR THE MORPHER MOD ON THIS OBJECT MorpherFndMod = TargMrphObj.modifiers[ModNameText] If MorpherFndMod != undefined Then ( If ClassOf MorpherFndMod == Morpher Then( ClassOfModGood = True ) ) --------- IF MorpherFndMod != undefined and ClassOfModGood == True Then ( -- SET THE VALUE OF THE MORPH CHANNEL WM3_MC_SetValue MorpherFndMod " ----------------------------------------------- SpinActBldPrt2 = ( slt as String ) + " MrphChannel_" + (slt as String) + ".value " + "\n" ---------------------------------------------- SpinActBldPrt2_A = " ) ) -- end If isValidNode TargMrphObj Then " SpinActBldPrt3 = ") -- END " + SpinActBldPrt1 ---------- FINAL SPINNER ACTION STRING SpinnerActnsStrBld = SpinnerActnsStrBld + "\n" + SpinActBldPrt1 + SpinActBldPrt1_A + SpinActBldPrt2 + SpinActBldPrt2_A + SpinActBldPrt3 ) -- END for slt = 1 to 100 do --------------------- END LOOP --------------------- END LOOP --------------------- END LOOP -- FINAL ROLLOUT STRING FOR EXECUTE -- DynamicRollExStrPart1 = RolloutAssignStr + "\n" + EditText_1_Strng + "\n" + RadButt_1_Strng + "\n" + PickButt_1_Strng + "\n" -- DynamicRollExStrPart2 = CheckBoxStrngBld + "\n" + SpinnersStrngBld + "\n" -- DynamicRollExStrPart3 = PickButtActnStrng + "\n" + CheckBxActnsStrBld + "\n" + SpinnerActnsStrBld + "\n" + "------------------" + "\n" DynamicRollExStrPart1 = RolloutAssignStr + "\n" + EditText_1_Strng + "\n" + RadButt_1_Strng + "\n" + PickButt_1_Strng + "\n" DynamicRollExStrPart2 = WholeSpinrUi + "\n" + "\n" + "\n" DynamicRollExStrPart3 = PickButtActnStrng + "\n" + CheckBxActnsStrBld + "\n" + SpinnerActnsStrBld + "\n" + "------------------" + "\n" -- DynamicRollExStrPart1 = RadButt_1_Strng + "\n" + CheckBoxStrngBld + "\n" + SpinnersStrngBld + "\n" + PickButtActnStrng + "\n" + CheckBxActnsStrBld + "\n" + SpinnerActnsStrBld EndRlltPrt = "\n ) -- end rollout" --- BUILD THE FINAL ROLLOUT EXECUTE STRING DynamicRollExStrFinal = DynamicRollExStrPart1 + DynamicRollExStrPart2 + DynamicRollExStrPart3 + EndRlltPrt + "\n" + "\n" + RollFloatPart + "\n" + AddRlltPart + "\n" + "\n" -- EXECUTE Execute DynamicRollExStrFinal -- DynamicRollExStrFinal ) -- end If OpenFloaterOkay == True Then ) -- END On OpenTheFloatr Pressed Do ) -- END ROLLOUT OpenMorphFloater "Open Morph Floater" OpenMrphFlt = NewRolloutFloater "Open Morph Floater" 200 200 AddRollout OpenMorphFloater OpenMrphFlt